'''
----案例：银行卡类----
编写一个银行卡类：
属性：银行名称、卡号、密码、姓名、余额
方法：登录、存款、取款
'''


class Card:
    card_name = '浦发银行'

    def __init__(self, id, name, password, balance):
        self.id = id
        self.name = name
        self.password = password
        self.balance = balance

    def login(self):
        tag = 0
        id = input('请输入你的卡号：')
        pwd = input('请输入你的密码：')
        if id == self.id and pwd == self.password:
            tag = 1
        return tag

    def save_money(self):
        tag = self.login()
        if tag == 1:
            money = float(input('你的存入金额为：'))
            self.balance += money
            print(f'存入成功，余额为{self.balance}')

    def take_money(self):
        tag = self.login()
        if tag == 1:
            money = float(input('你的取出金额为：'))
            if money <= self.balance:
                self.balance -= money
                print(f'取款成功，余额为{self.balance}')
            else:
                print(f'取款失败，金额不足')


if __name__ == '__main__':
    card1 = Card('1001', 'zhangsan', '123', 1000)
    # print(card1.assert())
    # card1.save_money()
    # card1.take_money()

    # 但是：
    # 问题1：外边可以随意访问和修改余额，有风险？？？？
    card1.balance += 1000000000
    print(card1.balance)
    # 问题2：只登录，什么都不干的，是不是意义不大？？？
    print(card1.login())
